#ifndef _gpio_armeabi_v7a_
#define _gpio_armeabi_v7a_

#include <string>

namespace gpio_syslib
{
    class pin
    {
        static const std::string mapper;
        static const std::string unmapper;
        int fd_map;
        int fd_unmap;
        int num;
        std::string map_node;
        std::string unmap_node;
        int open_operation_node(const std::string&,const int&);
        public:
            enum class direction
            {
                input,
                output,
                undefined,
            };
            enum class state
            {
                low,
                high,
                undefined,
            };
            pin(const int&);
            ~pin();
            direction get_direction();
            void set_direction(const direction&);
            state get_state();
            void set_state(const state&);
            int get_number();
   };
};

#endif
